package com.jyr.ohs.service;

import com.jyr.ohs.common.UnifiedJsonReturn;
import com.jyr.ohs.entity.*;
import com.jyr.ohs.mapper.IssueMapper;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author ZhongJing </p>
 * @Description </p>
 * @date 2021/4/15 11:59 上午 </p>
 */
public interface TeacherService {

    /**
     * 教师登陆
     * @param teacher 教师信息
     * @return 统一JSON格式
     */
    UnifiedJsonReturn<Teacher> login(Teacher teacher);

    /**
     * 批量添加教师信息
     * @param teacherNum 要生成的教师个数
     * @param password 默认密码
     */
    boolean addList(Integer teacherNum, String password);

    /**
     * 查询指定id教师的所有课程
     * @param id 教师id
     * @return 课程列表
     */
    List<Course> getAllCourseById(Integer id);

    /**
     * 发布作业
     * @param issue 发布的作业的详细信息
     * @param file 作业文件
     * @return true成功，false失败
     */
    boolean publishHomework(Issue issue, MultipartFile file);

    /**
     * 查看对应教师id已发布的所有作业
     * @param tid 教师id
     * @return 返回一个作业(Homework)的集合
     */
    List<Homework> getHomeworkListByTid(Integer tid);

    /**
     * 查询某门课程已交作业
     * @param cid 课程id
     * @return 返回一个SubmitWork的集合
     */
    List<SubmitWork> getSubmitWorkListByCid(Integer cid);
}
